1. Field of the Invention
The present invention relates to color processing and, more particularly, to a spectral color reproduction technique.
2. Description of the Related Art
When an image of an object captured by a digital camera is printed using a printer, the digital camera and printer respectively have unique color spaces. Therefore, when the captured image is transferred to and printed by the printer without any correction, the colors of a printed image do not often match those of the captured image or object.
In order to solve such color reproducibility problem between devices, processing for converting a color space of an input device onto that of an output device (to be referred to as color conversion hereinafter) is required. In general, input devices such as a digital camera, video camcorder, and scanner and output devices such as various kinds of printers using ink-jet, sublimation, and electrophotography systems incorporate a color conversion function so as to enhance their color reproduction performances (see Japanese Patent Laid-Open No. 2006-157252). Note that the color conversion of these devices is included in a colorimetric color reproduction technique.
However, with conventional color conversion, due to the influence of an illumination light source, object colors may match reproduction colors under a certain illumination light source, but often do not match under a different illumination light source.
In recent years, in the color management field, as a technique for minimizing the influence of environment light of, for example, an illumination light source, and reproducing more faithful colors, a spectral color reproduction technique has been examined. The spectral color reproduction technique handles spectral reflectances of an object, which do not depend on an illumination light source, as color information, and can control to match object colors and reproduction colors even when environment light has changed.
As one spectral color reproduction technique, a “multi-band input/output technique” is known (see Japanese Patent Laid-Open No. 2009-038591). This technique obtains spectral reflectances of an object by obtaining color information of four primary colors or more of the object in place of color reproduction based on three primary colors such as R, G, and B or C, M, and Y. Upon obtaining the spectral reflectances, when, for example, a visible range is sampled at wavelengths in increments of 10 nm, spectral reflectances become 36-dimensional data per wavelength (per color), and a spectral image obtained as a result of sampling has a huge data amount. Hence, a method of obtaining a spectral image with a smaller data amount has been proposed.
A spectral image undergoes principal component analysis to calculate principal component vectors of spectral reflectance data. Then, spectral reflectances are expressed using principal component vectors and principal component coefficients to calculate output signals according to values of the principal component coefficients, thus creating a lookup table (LUT) that associates the principal component coefficients with the output signals. As a result, principal component coefficients calculated from an input spectral image are input to the LUT, thus calculating corresponding output signals.
According to Japanese Patent Laid-Open No. 2009-038591, it is possible to finally reduce the aforementioned 36-dimensional spectral reflectance data to six-dimensional principal component coefficient data. Then, using a six-dimensional hypertetrahedron interpolation, desired output signals are derived from a six-dimensional LUT (6DLUT).
In the future, devices embedded in digital cameras and various printers will incorporate the spectral color reproduction technique. The invention of Japanese Patent Laid-Open No. 2009-038591 contributes to a data amount reduction. However, this literature does not examine any aspect of an embedded device which incorporates the spectral color reproduction technique. When the embedded device incorporates the six-dimensional hypertetrahedron interpolation disclosed by this literature, the following problem is posed.
A microprocessor (CPU) included in the embedded device does not always have a computing power as high as, for example, a high-end personal computer (PC) or supercomputer. Therefore, when the CPU of the embedded device executes the six-dimensional hypertetrahedron interpolation, calculations of output signal values according to a spectral image require an immense amount of time. In other words, it is not practical to implement the six-dimensional hypertetrahedron interpolation by software processing in consideration of the processing speed of the CPU.
On the other hand, when the six-dimensional hypertetrahedron interpolation is implemented by hardware, another problem is posed. For example, when table values obtained by dividing respective axes of six dimensions into eight are held in a 6DLUT, the total number of table values amounts to 86=262,144. On the other hand, when table values obtained by dividing the respective axes into 16 are held, the total number of table values amounts to 166=16,777,216. How to store such large quantities of table values in a memory included in the embedded device has to be further examined. Each unit hypersolid of this 6DLUT is configured by 26=64 table values, and table values of seven points used in the six-dimensional hypertetrahedron interpolation are selected from these table values. However, there are 720 different combinations of table values of seven points, and a decent setup is required for hardware implementation in the embedded device.
On the other hand, the current embedded device incorporates a color conversion (a three-dimensional tetrahedral interpolation or four-dimensional hypertetrahedron interpolation) as a colorimetric color reproduction technique. When a six-dimensional hypertetrahedron interpolation is newly incorporated using hardware resources as small as possible, it is desirable to share hardware resources for the existing low-dimensional tetrahedron interpolation.